mikedeblin writes about a portable MP3 player built on the ESP32-S3 that plays music from a microSD card or streams it from a DLNA/UPnP media server (tested with Synology Audio Station). The device features a 1.8" colour TFT with four display modes, an OLED status display, a rotary encoder with a 16-LED ring, and an output compressor and limiter that protect the DAC from being overdriven.
- Uses a PCM5102A DAC in hardware I²S mode with a ReaComp-style compressor and brick-wall lookahead limiter
- Network streaming uses a 256 KB PSRAM ring buffer to absorb WiFi drop-outs
- Supports ID3v2.3/2.4 tags in UTF-16, UTF-8, Latin-1, and Windows-1251 (Cyrillic)
- LED ring is driven through an MCP23017 I²C GPIO expander with 125 Hz multiplexing
- MP3 only for now; AAC and FLAC decoders exist in AudioTools but are not yet wired in